# 变量作用域
# 全局变量: 定义在函数外部的变量, 作用域(函数内部和函数外部)
# 局部变量: 定义在函数内部的变量, 作用域(函数内部)
c = 500
def func04():
    # 想在函数内部修改全局变量c
    # (想在函数内部使用函数外部的变量 global: 全局)
    global c  # 声明：函数内使用的是全局变量c
    c = 600  # 修改全局变量c
    print("函数内部:", c)
func04()  # 600
print("函数外部:", c)  # 600

# 就近原则
b = 300
def func03():
    b = 400
    # 就近原则: 函数内部 -> 函数外部 -> 内建模块builtins.py
    print("函数内部:", b)
func03()  # 400
print("函数外部:", b)  # 300
# 局部变量
def func02():
    a = 200
    print("函数内部:", a)
func02()  # 200
# print("函数外部:", a)  报错

# 全局变量
x = 100
def func01():
    print(x)
func01()  # 100
print(x)  # 100
